package cn.fansunion.leecode.string;

/**
 * 转换成小写字母
 * 给你一个字符串 s ，将该字符串中的大写字母转换成相同的小写字母，返回新的字符串。
 * https://leetcode-cn.com/problems/to-lower-case/
 * @author wen.lei@brgroup.com
 *
 * 2022-2-16
 */
public class ToLowerCase {
    /*输入：s = "Hello"
       输出："hello"
    
       输入：s = "here"
       输出："here"
    
       输入：s = "LOVELY"
       输出："lovely"*/
    /**
     *   官方解法，这3行，略显高端。记不住啊。if (ch >= 65 && ch <= 90) {ch |= 32;}
     * @param s
     * @return
     */
        public String toLowerCase(String s) {
            if(s==null) {
                return s;
            }
            StringBuilder sb = new StringBuilder();
            for (int index=0;index<s.length();index++) {
                Character c=s.charAt(index);
                if(Character.isUpperCase(c)) {
                    c=Character.toLowerCase(c);
                }
                sb.append(c);
            }
            String lowerStr = sb.toString();
            return lowerStr;
        }
}
